home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1997 February / EnigmA AMIGA RUN 15 (1997)(G.R. Edizioni)(IT)[!][issue 1997-02][PLANET CD V].iso / enigma / earcd / emula / arosdv19.lha / AROS / config / dummy / cacheclearu. < prev    next >
Text File  |  1996-09-12  |  898b  |  56 lines

  1. |*****************************************************************************
  2. |
  3. |   NAME
  4. |
  5. |    __AROS_LH0(void, CacheClearU,
  6. |
  7. |   LOCATION
  8. |    struct ExecBase *, SysBase, 106, Exec)
  9. |
  10. |   FUNCTION
  11. |    Flushes the contents of all CPU chaches in a simple way.
  12. |
  13. |   INPUTS
  14. |
  15. |   RESULT
  16. |
  17. |   NOTES
  18. |
  19. |   EXAMPLE
  20. |
  21. |   BUGS
  22. |
  23. |   SEE ALSO
  24. |
  25. |   INTERNALS
  26. |
  27. |   HISTORY
  28. |
  29. |******************************************************************************
  30.  
  31.     Supervisor  =    -0x1e
  32.  
  33.     | Simple 68000s have no chaches
  34.     .globl    _Exec_CacheClearU
  35. _Exec_CacheClearU:
  36.     rts
  37.  
  38.     | Is this the same routine for 20?
  39.     .globl    _Exec_CacheClearU_30
  40. _Exec_CacheClearU_30:
  41.     | Do the real work in supervisor mode
  42.     | Preserve a5 in a1 (faster than stack space)
  43.     movel    a5,a1
  44.     leal    cacheclearusup,a5
  45.     jsr    a6@(Supervisor)
  46.     movel    a1,a5
  47.     rts
  48.  
  49. cacheclearusup:
  50.     | Set CD and CI bit in cacr
  51.     movec    cacr,d0
  52.     orw    #0x0808,d0
  53.     movec    d0,cacr
  54.     rte
  55.  
  56.